libdill

foo bar tree

언어적인 관점에서 봤을때 web의 태동과 함께 Java가 대세가 된 데에는 thread 기반의 servlet request가 한 몫을 담당했고, web2.0 에 들어서서는 AJAX 으로 대변되는 비동기 javascript가 큰 역할을 하고 있습니다.

concurrency 라는 관점에서 코드가 대세가 되었습니다.

2016/06/05 Editor’s choice

sustrik/libdill
_libdill - Structured concurrency in C_github.com

케이블 방송을 며칠 봤더니 프로필 사진의 담배를 모자이크해야 하나 1초 고민했네요.


이 프로젝트는 C(C++아닙니다) 에서 이 concurrency를 구현할 수 있게 해주는 프로젝트 입니다.

libdill
_Concurrency means that multiple functions can run independently of each another. It can mean that they are running in…_libdill.org

관련된 자세한 내용은 링크에서 찾아볼 수 있습니다.


요약하자면

go 의 구현처럼 c의 coroutine을 만들었다.

이전에도 libmill이라는 프로젝트를 만들었지만, 그것은 go를 따라 한 것 뿐이고 이번에는 구조적인 concurrency를 가능하도록 만들고 있다.

concurrency

함수로 go()와 proc를 제공하는데 이런 정도의 차이가 있다.

정도가 될 거 같습니다.

http 관련 메쏘드는 포함하지 않았는데, 다른 프로젝트로 조만간 만들 거라고 합니다.


어떤 데 활용할 수가 있을까요?

아마도 여러군데서 활용이 될 수 있을 거 같은데 C 기본 라이브러리로 활용할 수 있다면 모들 플랫폼에서 사용되면서 리턴값만 다른 언어에서 사용하는 형태로도 많이 사용될 수 있을 듯합니다.(MS 계열및 Objective-C 계열 모두 가능?)

By Keen Dev on June 5, 2016.

Exported from Medium on May 31, 2017.